package de.tum.in.eist.im.client;

import java.util.List;

import com.google.gwt.user.client.rpc.AsyncCallback;

import de.tum.in.eist.im.client.domain.Message;
import de.tum.in.eist.im.client.domain.NewMessagesChunk;
import de.tum.in.eist.im.client.domain.User;

public interface ChatServiceBetaAsync {
	void getNewMessages(long t, AsyncCallback<NewMessagesChunk> callback);
	void getHistory(long t, AsyncCallback<List<Message>> callback);
	void getLoggedInUsers(AsyncCallback<List<User>> callback);
	void registerNewUser(User u, AsyncCallback<Boolean> callback);
	void logout(User u, AsyncCallback<Boolean> callback);
	void login(User u, AsyncCallback<Boolean> callback);
	void sendMessage(Message m, AsyncCallback<Void> callback);
}
